﻿<src:BaseWPFWindow x:Class="ESF.SFT.FileUploader.ValidationLogViewer"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
		xmlns:src="clr-namespace:ESF.WinForms.Elements;assembly=ESF.WinForms"
        xmlns:lc="clr-namespace:ESF.SFT.FileUploader.Converters"
        Title="Log de Validaciones" Height="642" Width="794" WindowStartupLocation="CenterOwner" ResizeMode="NoResize" Closing="Window_Closing" Icon="/ESF.SFT.FileUploader;component/Images/File_64x64.png">
    <Window.Resources>
        <lc:ErrorValueConverter x:Key="errorValueConverter"/>
    </Window.Resources>
    <Grid>
		<DockPanel Margin="10">
			<StackPanel Orientation="Horizontal" DockPanel.Dock="Top">
                <Label Content="Tipo:" Width="160" Padding="0 0 0 5"></Label>
				<Label Name="lblFileType" Content="..." Padding="0 0 0 5"></Label>
			</StackPanel>
			<StackPanel Orientation="Horizontal" DockPanel.Dock="Top">
                <Label Content="Ubicación del Archivo:" Width="160" Padding="0 0 0 5"></Label>
                <TextBlock TextDecorations="Underline" TextWrapping="WrapWithOverflow" Padding="0 0 0 5" Text="..." Height="36" Name="lblFileName" Width="608" MouseLeftButtonDown="lblFileName_MouseLeftButtonDown" ToolTip="De click para abrir el archivo en su editor de texto por defecto" />
			</StackPanel>
            <StackPanel Orientation="Horizontal" DockPanel.Dock="Top">
                <Label Content="Nombre:" Width="160" Padding="0 0 0 5"></Label>
                <TextBlock TextWrapping="WrapWithOverflow" ToolTip="Va desde el primer caracter hasta el primer punto sin incluirlo" Text="..." Name="lblOnlyName" Padding="0 0 0 5" Width="460" />
            </StackPanel>
            <StackPanel Orientation="Horizontal" DockPanel.Dock="Top">
                <Label Content="Extensión:" Width="160" Padding="0 0 0 5"></Label>
                <TextBlock TextWrapping="WrapWithOverflow" Text="..." Name="lblOnlyExtension" ToolTip="Va desde el primer punto incluyendolo hasta el último caracter" Padding="0 0 0 5" Width="460"/>
            </StackPanel>
            <StackPanel Orientation="Horizontal" DockPanel.Dock="Top">
                <Label Content="Estado del Archivo:" Width="160" Padding="0 0 0 5"></Label>
                <TextBlock TextWrapping="WrapWithOverflow" Text="..." Name="lblFileStatus" Padding="0 0 0 5" Width="460" FontWeight="SemiBold"/>
            </StackPanel>
            <DataGrid Name="grvErrors" AutoGenerateColumns="False" Margin="0 10 0 0" IsReadOnly="True" CanUserReorderColumns="False" CanUserSortColumns="False" HorizontalGridLinesBrush="Silver" VerticalGridLinesBrush="Silver" AlternatingRowBackground="Ivory" SelectionUnit="FullRow" SelectionMode="Extended">
				<DataGrid.Columns>
					<DataGridTextColumn Binding="{Binding LineNumber}" Header="Linea" Width="45" CanUserResize="False">
						<DataGridTextColumn.ElementStyle>
							<Style TargetType="TextBlock">
								<Setter Property="TextAlignment" Value="Center" />
							</Style>
						</DataGridTextColumn.ElementStyle>
					</DataGridTextColumn>
                    <DataGridTextColumn Binding="{Binding RelatedRegType}" Header="Tipo Reg." Width="60" CanUserResize="False">
                        <DataGridTextColumn.ElementStyle>
                            <Style TargetType="TextBlock">
                                <Setter Property="TextAlignment" Value="Center" />
                            </Style>
                        </DataGridTextColumn.ElementStyle>
                    </DataGridTextColumn>
                    <DataGridTextColumn Binding="{Binding LinePosition}" Header="Campo" Width="55" CanUserResize="False">
						<DataGridTextColumn.ElementStyle>
							<Style TargetType="TextBlock">
								<Setter Property="TextAlignment" Value="Center" />
							</Style>
						</DataGridTextColumn.ElementStyle>
					</DataGridTextColumn>
					<DataGridTextColumn Binding="{Binding RelatedFieldname}" Header="Nombre del Campo" Width="120" />
                    <DataGridTextColumn Header="Valor Errado [valor]" Width="130" Binding="{Binding RelatedValue, Converter={StaticResource ResourceKey=errorValueConverter}}"/>
					<DataGridTextColumn Binding="{Binding Message}" Header="Detalle del Error" Width="Auto" />
				</DataGrid.Columns>
			</DataGrid>
		</DockPanel>
	</Grid>
</src:BaseWPFWindow> 